#include "widget.h"
#include "ui_widget.h"
#include"QDebug"
#include<QFont>
#include<QShortcut>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    setMouseTracking(false);//鼠标跟踪捕捉


}

Widget::~Widget()
{
    delete ui;
}
void Widget::mousePressEvent(QMouseEvent *event)
{
   QString str1=QString("x=%1,y=%2").arg(event->x()).arg(event->y());//以控件作为基准
   qDebug()<<str1;
}

void Widget::mouseReleaseEvent(QMouseEvent *ev)
{
    QString str1=QString("x=%1,y=%2").arg(ev->globalX()).arg(ev->globalY());//以窗口作为基准
    qDebug()<<str1;
}

void Widget::mouseDoubleClickEvent(QMouseEvent *ev)//双击
{
    QString str1=QString("时间戳：%1").arg(ev->timestamp());//获取事件发生的时间戳（毫秒级精度）
    qDebug()<<str1;
}

void Widget::mouseMoveEvent(QMouseEvent *event)
{
    QString str1=QString("时间戳：%1").arg(event->timestamp());//获取事件发生的时间戳（毫秒级精度）
    qDebug()<<str1;
}

void Widget::wheelEvent(QWheelEvent *ev)
{  static int sum=0;
    int length=ev->delta();
    sum+=length;
    QFont ft("仿宋",sum/12);
    ui->label->setFont(ft);
    qDebug()<<sum;
}

void Widget::keyPressEvent(QKeyEvent *event)
{
    if(event->key()==Qt::Key_S)//单个按键触发
        qDebug()<<"S按下";
    if(event->key()==Qt::Key_S&&event->modifiers()==Qt::ControlModifier)//组合键触发
    {
        qDebug()<<"Ctrl+s 保存";
    }
    if ((event->modifiers() & (Qt::ShiftModifier | Qt::ControlModifier))//三个组合键
          && event->key() == Qt::Key_A) {
          qDebug() << "Shift+Ctrl+A";
      }

}



